#include <iostream>
using std::cout;
using std::endl;

template <class T1, class T2>
T1 add(T1 t1, T2 t2){
    cout << "template" << endl;
    return t1 + t2;
}
#if 0
short add(short a, short b){
    cout << "func" << endl;
    return a + b;
}
#endif
//通过这个案例，我们可以看出，普通函数的优先级要高于函数模板的优先级
void test(){
    short s1 = 3, s2 = 5;
    cout << add(s1, s2) << endl;
}

int main()
{
    test();
    return 0;
}

